/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   Module Name          : com.yaodian100.ec.combo.entity.ComboProduct
   Module Description   :

   Date Created      : 2009/12/10
   Original Author   : eric.chen
   Team              : yaodian100
   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   MODIFICATION HISTORY
   ------------------------------------------------------------------------------
   Date Modified       Modified by       Comments
   ------------------------------------------------------------------------------
   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
package com.yaodian100.ec.comboproduct.entity;

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import com.yaodian100.core.common.entity.BaseEntity;

/**
 * @author eric.chen
 * 
 */

@Entity
@Table(name = "EC_COMBO_PRODUCT")
public class ComboProduct extends BaseEntity {

	/* serialVersionUID */
	private static final long serialVersionUID = -3808543152438398055L;

	@Id
	@GeneratedValue(strategy = GenerationType.AUTO, generator = "seq_ec_combo_product")
	@SequenceGenerator(name = "seq_ec_combo_product", sequenceName = "SEQ_EC_COMBO_PRODUCT")
	@Column(name = "ID")
	private Long id;

	/**
	 * 主商品编号 Main Product ID
	 */
	@Column(name = "MAIN_PRODUCT_ID", length = 8, nullable = false)
	private String mainProductID;

	/**
	 * 搭售商品编号 addonProductID
	 */
	@Column(name = "ADDON_PRODUCT_ID", length = 8, nullable = false)
	private String addonProductID;

	/**
	 * 搭售有效起始日期时间 Start Date time
	 */
	@Column(name = "START_DATE_TIME", nullable = false)
	@Temporal(TemporalType.TIMESTAMP)
	private Date startDateTime;

	/**
	 * 启用否？是: Y; 否: N
	 */
	@Column(name = "IS_ENABLE", length = 1, nullable = false)
	private String enable;

	/**
	 * @return the serialversionuid
	 */
	public static long getSerialversionuid() {
		return serialVersionUID;
	}

	/**
	 * @return the id
	 */
	public Long getId() {
		return id;
	}

	/**
	 * @return the mainProductID
	 */
	public String getMainProductID() {
		return mainProductID;
	}

	/**
	 * @return the addonProductID
	 */
	public String getAddonProductID() {
		return addonProductID;
	}

	/**
	 * @return the startDateTime
	 */
	public Date getStartDateTime() {
		return startDateTime;
	}

	/**
	 * @return the endDateTime
	 */
	public Date getEndDateTime() {
		return endDateTime;
	}

	/**
	 * @return the addonPrice
	 */
	public BigDecimal getAddonPrice() {
		return addonPrice;
	}

	/**
	 * @param id the id to set
	 */
	public void setId(Long id) {
		this.id = id;
	}

	/**
	 * @param mainProductID the mainProductID to set
	 */
	public void setMainProductID(String mainProductID) {
		this.mainProductID = mainProductID;
	}

	/**
	 * @param addonProductID the addonProductID to set
	 */
	public void setAddonProductID(String addonProductID) {
		this.addonProductID = addonProductID;
	}

	/**
	 * @param startDateTime the startDateTime to set
	 */
	public void setStartDateTime(Date startDateTime) {
		this.startDateTime = startDateTime;
	}

	/**
	 * @param endDateTime the endDateTime to set
	 */
	public void setEndDateTime(Date endDateTime) {
		this.endDateTime = endDateTime;
	}

	/**
	 * @param addonPrice the addonPrice to set
	 */
	public void setAddonPrice(BigDecimal addonPrice) {
		this.addonPrice = addonPrice;
	}

	/**
	 * 搭售有效结束时间 End Date time
	 */
	@Column(name = "END_DATE_TIME", nullable = false)
	@Temporal(TemporalType.TIMESTAMP)
	private Date endDateTime;

	/**
	 * 搭售加购金额 Minimal Order Amount
	 */
	@Column(name = "ADDON_PRICE")
	private BigDecimal addonPrice;

	/**
	 * @return the enable
	 */
	public String getEnable() {
		return enable;
	}

	/**
	 * @param enable the enable to set
	 */
	public void setEnable(String enable) {
		this.enable = enable;
	}

}
